home *** CD-ROM | disk | FTP | other *** search
/ Chip 1996 November / Chip 11-96.iso / workshop / howto / installa < prev    next >
Text File  |  1996-09-04  |  61KB  |  1,353 lines

  1.   The Linux Installation HOWTO
  2.   by Matt Welsh, mdw@sunsite.unc.edu
  3.   v3.3, 11 December 1994
  4.  
  5.   This document describes how to obtain and install the Linux software,
  6.   focusing on the popular Slackware distribution (version 2.0.1). It is
  7.   the first document which a new Linux user should read to get started.
  8.  
  9.   1.  Introduction
  10.  
  11.   Linux is a freely-distributable implementation of UNIX for 80386 and
  12.   80486 machines. It supports a wide range of software, including X
  13.   Windows, Emacs, TCP/IP networking (including SLIP), the works.  This
  14.   document assumes that you have heard of and know about Linux, and just
  15.   want to sit down and install it.
  16.  
  17.   1.1.  Other sources of information
  18.  
  19.   If you have never heard of Linux before, there are several sources of
  20.   basic information about the system. One is the Linux Frequently Asked
  21.   Questions list (FAQ), available from
  22.   sunsite.unc.edu:/pub/Linux/docs/FAQ. This document contains many
  23.   common questions (and answers!) about Linux---it is a ``must read''
  24.   for new users.
  25.  
  26.   In the directory /pub/Linux/docs on sunsite.unc.edu you'll find a
  27.   number of other documents about Linux, including the Linux INFO-SHEET
  28.   and META-FAQ, both of which you should read.  Also take a look at the
  29.   USENET newsgroups comp.os.linux.help and comp.os.linux.announce.
  30.  
  31.   Another source of online Linux documentation is the Linux HOWTO
  32.   archive, on sunsite.unc.edu:/pub/Linux/docs/HOWTO. The file HOWTO-
  33.   INDEX in that directory explains what Linux HOWTOs are available.
  34.  
  35.   The Linux Documentation Project is writing a set of manuals and books
  36.   about Linux, all of which are freely distributable on the net.  The
  37.   directory /pub/Linux/docs/LDP on sunsite.unc.edu contains the current
  38.   set of LDP manuals.
  39.  
  40.   The book ``Linux Installation and Getting Started'' is a complete
  41.   guide to getting and installing Linux, as well as how to use the
  42.   system once you've installed it. It contains a complete tutorial to
  43.   using and running the system, and much more information than is
  44.   contained here. This HOWTO is simply a condensation of some of the
  45.   most important information in that book. You can get ``Linux
  46.   Installation and Getting Started'' from sunsite.unc.edu in
  47.   /pub/Linux/docs/LDP/install-guide.  The README file there describes
  48.   how you can order a printed copy of the book (about 180 pages).
  49.  
  50.   1.2.  New versions of this document
  51.  
  52.   New versions of the Linux Installation HOWTO will be periodically
  53.   posted to comp.os.linux.announce, comp.os.linux.help, and
  54.   news.answers.  They will also be uploaded to various Linux FTP sites,
  55.   including sunsite.unc.edu:/pub/Linux/docs/HOWTO.
  56.  
  57.   1.3.  Feedback
  58.  
  59.   If you have questions or comments about this document, please feel
  60.   free to mail Matt Welsh, at mdw@sunsite.unc.edu. I welcome any
  61.   suggestions, criticism, or postcards. If you find a mistake with this
  62.   document, please let me know so I can correct it in the next version.
  63.   Thanks.
  64.  
  65.   2.  Hardware Requirements
  66.  
  67.   What kind of system is needed to run Linux? This is a good question;
  68.   the actual hardware requirements for the system change periodically.
  69.   The Linux Hardware-HOWTO gives a (more or less) complete listing of
  70.   hardware supported by Linux. The Linux INFO-SHEET provides another
  71.   list.
  72.  
  73.   At the very least, a hardware configuration that looks like the
  74.   following is required:
  75.  
  76.   Any ISA, EISA or VESA Local Bus 80386, 80486, or Pentium system will
  77.   do.  Currently, the MicroChannel (MCA) architecture (found on IBM PS/2
  78.   machines) is not supported.  Many PCI bus systems are supported (see
  79.   the Linux PCI HOWTO for details).  Any CPU from the 386SX to the
  80.   Pentium will work. You do not need a math coprocessor, although it is
  81.   nice to have one.
  82.  
  83.   You need at least 4 megabytes of memory in your machine. Technically,
  84.   Linux will run with only 2 megs, but most installations and software
  85.   require 4. The more memory you have, the happier you'll be. I suggest
  86.   8 or 16 megabytes if you're planning to use X-Windows.
  87.  
  88.   Of course, you'll need a hard drive and an AT-standard drive
  89.   controller. All MFM, RLL, and IDE drives and controllers should work.
  90.   Many SCSI drives and adaptors are supported as well; the Linux SCSI-
  91.   HOWTO contains more information on SCSI.
  92.  
  93.   Linux can actually run on a single 5.25" HD floppy, but that's only
  94.   useful for installation and maintenance.
  95.  
  96.   Free space on your hard drive is needed as well. The amount of space
  97.   needed depends on how much software you plan to install. Most
  98.   installations require somewhere in the ballpark of 40 to 80 megs.
  99.   This includes space for the software, swap space (used as virtual RAM
  100.   on your machine), and free space for users, and so on.
  101.  
  102.   It's conceivable that you could run a minimal Linux system in 10 megs
  103.   or less, and it's conceivable that you could use well over 100 megs or
  104.   more for all of your Linux software. The amount varies greatly
  105.   depending on the amount of software you install and how much space you
  106.   require. More about this later.
  107.  
  108.   Linux will co-exist with other operating systems, such as MS-DOS,
  109.   Microsoft Windows, or OS/2, on your hard drive. (In fact you can even
  110.   access MS-DOS files and run some MS-DOS programs from Linux.)  In
  111.   other words, when partitioning your drive for Linux, MS-DOS or OS/2
  112.   live on their own partitions, and Linux exists on its own. We'll go
  113.   into more detail later.
  114.  
  115.   You do NOT need to be running MS-DOS, OS/2, or any other operating
  116.   system to use Linux. Linux is a completely different, stand-alone
  117.   operating system and does not rely on other OS's for installation and
  118.   use.
  119.  
  120.   You also need a Hercules, CGA, EGA, VGA, or Super VGA video card and
  121.   monitor.  In general, if your video card and monitor work under MS-DOS
  122.   then it should work under Linux. However, if you wish to run X
  123.   Windows, there are other restrictions on the supported video hardware.
  124.   The Linux XFree86-HOWTO contains more information about running X and
  125.   its requirements.
  126.   In all, the minimal setup for Linux is not much more than is required
  127.   for most MS-DOS or MS Windows systems sold today. If you have a 386 or
  128.   486 with at least 4 megs of RAM, then you'll be happy running Linux.
  129.   Linux does not require huge amounts of diskspace, memory, or processor
  130.   speed. I (used to) run Linux on a 386/16 MHz (the slowest machine you
  131.   can get) with 4 megs of RAM, and was quite happy. The more you want to
  132.   do, the more memory (and faster processor) you'll need. In my
  133.   experience a 486 with 16 megabytes of RAM running Linux outdoes
  134.   several models of workstation.
  135.  
  136.   3.  Getting Linux
  137.  
  138.   In this section we'll cover how to obtain the Linux software.
  139.  
  140.   3.1.  Linux Distributions
  141.  
  142.   Before you can install Linux, you need to decide on one of the
  143.   ``distributions'' of Linux which are available. There is no single,
  144.   standard release of the Linux software---there are many such releases.
  145.   Each release has its own documentation and installation instructions.
  146.  
  147.   Linux distributions are available both via anonymous FTP and via mail
  148.   order on diskette, tape, and CD-ROM. The Linux Distribution HOWTO (see
  149.   sunsite.unc.edu in the file /pub/Linux/docs/HOWTO/Distribution-HOWTO)
  150.   includes a list of many Linux distributions available via FTP and mail
  151.   order.
  152.  
  153.   The release of Linux covered in this HOWTO is the Slackware
  154.   distribution, maintained by Patrick J. Volkerding
  155.   (volkerdi@mhd1.moorhead.msus.edu). It is one of the most popular
  156.   distributions available; it is very up-to-date and includes a good
  157.   amount of software including X-Windows, TeX, and others.  The
  158.   Slackware distribution consists of a number of ``disk sets'', each one
  159.   containing a particular type of software (for example, the d disk set
  160.   contains development tools such as the gcc compiler, and so forth).
  161.   You can elect to install whatever disk sets you like, and can easily
  162.   install new ones later.
  163.  
  164.   Slackware is also easy to install; it is very self-explanatory.  (So
  165.   self-explanatory, in fact, that this HOWTO may not be necessary.)
  166.  
  167.   The version of Slackware described here is 2.0.0, of 25 June 1994.
  168.   Installation of later versions of Slackware should be very similar to
  169.   the information given here.
  170.  
  171.   Information on other releases can be found in the Linux Installation
  172.   and Getting Started manual from the LDP. You can also find other
  173.   releases of Linux on various FTP sites, including
  174.   sunsite.unc.edu:/pub/Linux/distributions See the Distribution-HOWTO
  175.   (mentioned above) for details.
  176.  
  177.   The instructions here should be general enough to be applicable to
  178.   releases other than Slackware. I hate to be biased towards a single
  179.   release, but I don't have time to keep up with them all! And Slackware
  180.   appears to have what most Linux users are looking for.
  181.  
  182.   3.2.  Slackware Space Requirements
  183.  
  184.   Unfortunately, Slackware does not maintain a complete list of
  185.   diskspace requirements for each disk set. You need at least 7
  186.   megabytes to install just the A series of disks; a very rough estimate
  187.   of the required diskspace would be 2 or 2.5 megabytes per disk.
  188.  
  189.   The following disk sets are available:
  190.  
  191.      A  The base system. Enough to get up and running and have elvis and
  192.         comm programs available. Based around the 1.0.9 Linux kernel,
  193.         and the new filesystem standard (FSSTND).
  194.  
  195.         These disks are known to fit on 1.2M disks, although the rest of
  196.         Slackware won't. If you have only a 1.2M floppy, you can still
  197.         install the base system, download other disks you want and
  198.         install them from your hard drive.
  199.  
  200.      AP Various applications and add ons, such as the manual pages,
  201.         groff, ispell (GNU and international versions), term, joe, jove,
  202.         ghostscript, sc, bc, and the quota patches.
  203.  
  204.      D  Program development. GCC/G++/Objective C 2.5.8, make (GNU and
  205.         BSD), byacc and GNU bison, flex, the 4.5.26 C libraries, gdb,
  206.         kernel source for 1.0.9, SVGAlib, ncurses, clisp, f2c, p2c, m4,
  207.         perl, rcs.
  208.  
  209.      E  GNU Emacs 19.25.
  210.  
  211.      F  A collection of FAQs and other documentation.
  212.  
  213.      I  Info pages for GNU software. Documentation for various programs
  214.         readable by info or Emacs.
  215.  
  216.      N  Networking. TCP/IP, UUCP, mailx, dip, deliver, elm, pine, smail,
  217.         cnews, nn, tin, trn.
  218.  
  219.      OOP
  220.         Object Oriented Programming. GNU Smalltalk 1.1.1, and the
  221.         Smalltalk Interface to X (STIX).
  222.  
  223.      Q  Alpha kernel source and images (currently contains Linux
  224.         1.1.18).
  225.  
  226.      TCL
  227.         Tcl, Tk, TclX, blt, itcl.
  228.  
  229.      Y  Games. The BSD games collection, and Tetris for terminals.
  230.  
  231.      X  The base XFree86 2.1.1 system, with libXpm, fvwm 1.20, and xlock
  232.         added.
  233.  
  234.      XAP
  235.         X applications: X11 ghostscript, libgr13, seyon, workman,
  236.         xfilemanager, xv 3.01, GNU chess and xboard, xfm 1.2, ghostview,
  237.         and various X games.
  238.  
  239.      XD X11 program development. X11 libraries, server linkkit, PEX
  240.         support.
  241.  
  242.      XV Xview 3.2 release 5. XView libraries, and the Open Look virtual
  243.         and non-virtual window managers.
  244.  
  245.      IV Interviews libraries, include files, and the doc and idraw apps.
  246.         These run unreasonably slow on my machine, but they might still
  247.         be worth looking at.
  248.  
  249.      OI ParcPlace's Object Builder 2.0 and Object Interface Library 4.0,
  250.         generously made available for Linux developers according to the
  251.         terms in the "copying" notice found in these directories. Note
  252.         that these only work with libc-4.4.4, but a new version may be
  253.         released once gcc 2.5.9 is available.
  254.  
  255.      T  The TeX and LaTeX2e text formatting systems.
  256.  
  257.   You must get the ``a'' disk set; the rest are optional.  I suggest at
  258.   least installing the a, ap, and d sets, as well as the x set if you
  259.   plan to run X Windows.
  260.  
  261.   3.3.  Getting Slackware via Mail Order
  262.  
  263.   Slackware is available for free from the Internet, as well as via mail
  264.   order (if you don't have Internet access, or don't want to take the
  265.   time to download it yourself). The next section describes how to
  266.   download Slackware from the Internet.
  267.  
  268.   The various mail order distributors for Slackware (and other Linux
  269.   distributions) are listed in the Linux Distribution HOWTO, from
  270.   sunsite.unc.edu in the directory /pub/Linux/docs/HOWTO.
  271.  
  272.   3.4.  Getting Slackware from the Internet
  273.  
  274.   The Slackware release of Linux may be found on any number of FTP sites
  275.   worldwide. The Linux META-FAQ lists several of the Linux FTP sites; we
  276.   suggest that you try to find the software on the FTP site nearest you,
  277.   to reduce net traffic. However, two of the major Linux FTP sites are
  278.   sunsite.unc.edu and tsx-11.mit.edu.
  279.  
  280.   The Slackware release may be found on the following FTP sites:
  281.  
  282.   ╖  sunsite.unc.edu:/pub/Linux/distributions/slackware
  283.  
  284.   ╖  tsx-11.mit.edu:/pub/linux/packages/slackware
  285.  
  286.   ╖  ftp.cdrom.com:/pub/linux/slackware
  287.  
  288.      ftp.cdrom.com is Slackware's home site.
  289.  
  290.   3.4.1.  Downloading the files
  291.  
  292.   You need to download the following files from the FTP sites listed
  293.   above. Make sure that you use binary mode when FTPing them!
  294.  
  295.   ╖  The various README files, as well as SLACKWARE_FAQ.  Be sure to
  296.      read these files before attempting to install the software, to get
  297.      any updates or changes to this document.
  298.  
  299.   ╖  A bootdisk image. This is a file that you will write to a floppy to
  300.      create the Slackware boot disk. If you have a 1.44 megabyte boot
  301.      floppy (3.5"), look in the directory bootdsks.144.  If you have a
  302.      1.2 megabyte boot floppy (5.25"), look in the directory
  303.      bootdsks.12.  The README files in these directories describes what
  304.      the files are.
  305.  
  306.      You need one of the following files. (The file READ.ME in these
  307.      directories contains an up-to-date list of boot disk images.)
  308.  
  309.   ╖  bare.gz. This is a boot floppy that has only IDE hard drive
  310.      drivers. (No SCSI, CD-ROM, or networking support.)  Use this if you
  311.      only have an IDE hard drive controller and aren't going to be
  312.      installing over the network or from CD-ROM.
  313.  
  314.   ╖  xt.gz. This is a boot floppy with IDE and XT hard drive support.
  315.  
  316.   ╖  cd.gz. Contains IDE hard drive and non-SCSI CD-ROM drivers.  Get
  317.      this if you're going to be installing from a (non-SCSI) CD-ROM
  318.      (only relevant if you bought a Slackware CD-ROM of some kind).
  319.  
  320.   ╖  cdscsi.gz. Contains IDE and SCSI hard drive support, and non-SCSI
  321.      CD-ROM drivers.
  322.  
  323.   ╖  scsi.gz. Contains IDE and SCSI hard drive support, and SCSI CD-ROM
  324.      drivers.
  325.  
  326.   ╖  net.gz. Contains IDE hard drive and TCP/IP networking support. Get
  327.      this if you are going to install over the network using NFS.
  328.  
  329.   ╖  scsinet.gz. Contains IDE and SCSI hard drive support, SCSI CD-ROM
  330.      drivers, and TCP/IP networking support.  You might want to try this
  331.      one first; use bare.gz or one of the other boot floppies if this
  332.      doesn't work for you.
  333.  
  334.      You need only one of the above bootdisk images, depending on the
  335.      type hardware that you have in your system.
  336.  
  337.      The issue here is that some hardware drivers conflict with each
  338.      other in strange ways, and instead of attempting to debug hardware
  339.      problems on your system it's easier to use a boot floppy image with
  340.      only certain drivers enabled. Most users should try scsi.gz or
  341.      bare.gz.
  342.  
  343.   ╖  A rootdisk image. This is a file that you will write to a floppy to
  344.      create the Slackware installation disk. As with the bootdisk image,
  345.      look in rootdsks.144 or rootdsks.12 depending on the type of boot
  346.      floppy drive that you have.
  347.  
  348.      You need one of the following files:
  349.  
  350.   ╖  color144.gz. The menu-based color installation disk for 1.44 meg
  351.      drives. Most users should use this rootdisk.
  352.  
  353.   ╖  umsds144.gz. A version of the color144 disk for installing with the
  354.      UMSDOS filesystem, which allows you to install Linux onto a
  355.      directory of an MS-DOS filesystem. This installation method is not
  356.      discussed in detail here, but it will prevent you from having to
  357.      repartition your drive. More on this later.
  358.  
  359.   ╖  tty144.gz. The terminal-based installation disk for 1.44 meg
  360.      drives. You should use color144.gz, but a few people have reported
  361.      problems with it on their system. If color144.gz doesn't work for
  362.      you, try tty144.gz instead.  It is a bit dated and the installation
  363.      procedure isn't identical, but it should work if color144.gz
  364.      doesn't.
  365.  
  366.   ╖  colrlite.gz. The menu-based color installation disk for 1.2 meg
  367.      drives. Some things have been trimmed off of this disk to make it
  368.      fit on a 1.2 meg floppy, but it should work if you only have a 1.2
  369.      meg drive.
  370.  
  371.   ╖  umsds12.gz. A version of the colrlite disk for installing with the
  372.      UMSDOS filesystem. See the description of umsds144.gz, above.
  373.  
  374.   ╖  tty12.gz. The terminal-based installation disk for 1.2 meg drives.
  375.      Use this rootdisk if you have a 1.2 meg boot floppy and colrlite.gz
  376.      doesn't work for you.
  377.  
  378.      Again, you need only one of the above rootdisk images, depending on
  379.      the type of boot floppy drive that you have.
  380.  
  381.   ╖  GZIP.EXE. This is an MS-DOS executable of the gzip compression
  382.      program used to compress the boot and rootdisk files (the .gz
  383.      extension on the filenames indicates this). This can be found in
  384.      the install directory.
  385.  
  386.   ╖  RAWRITE.EXE. This is an MS-DOS program that will write the contents
  387.      of a file (such as the boot and rootdisk images) directly to a
  388.      floppy, without regard to format. You will use RAWRITE.EXE to
  389.      create the boot and root floppies.  This can be found in the
  390.      install directory as well.
  391.  
  392.      You only need RAWRITE.EXE and GZIP.EXE if you plan to create the
  393.      boot and root floppies from an MS-DOS system. If you have access to
  394.      a UNIX workstation with a floppy drive instead, you can create the
  395.      floppies from there, using the dd command.  See the man page for dd
  396.      and ask your local UNIX gurus for assistance.
  397.  
  398.   ╖  The files in the directories slakware/a1, slakware/a2, slakware/a3,
  399.      and slakware/a4.  These files make up the ``a'' disk set of the
  400.      Slackware distribution. They are required. Later, you will copy
  401.      these files to MS-DOS floppies for installation (or, you can
  402.      install from your hard drive). Therefore, when you download these
  403.      files, keep them in separate directories; don't mix the a1 files
  404.      with the a2 files, and so on.
  405.  
  406.      Be sure that you get the files without periods in the filenames as
  407.      well. That is, within FTP, use the command ``mget *'' instead of
  408.      ``mget *.*''.
  409.  
  410.   ╖  The files in the directories ap1, ap2, etc., depending on what disk
  411.      sets you are installing. For example, if you are installing the
  412.      ``x'' disk series, get the files in the directories x1 through x5.
  413.      As with the ``a'' disk set, above, be sure to keep the files in
  414.      separate directories when you download them.
  415.  
  416.   3.4.2.  Installation methods
  417.  
  418.   Slackware provides several different means of installing the software.
  419.   The most popular is installing from an MS-DOS partition on your hard
  420.   drive; the other is to install from a set of MS-DOS floppies created
  421.   from the disk sets that you downloaded.
  422.  
  423.   You can also install Slackware from an NFS-mounted filesystem over a
  424.   TCP/IP network. This is somewhat involved, however, and a discussion
  425.   of how to do this is out of the range of this document. If you need
  426.   help, ask your local UNIX gurus how to set up your system to mount an
  427.   NFS filesystem which you can install Slackware from. (For this, you'll
  428.   need another system on the network which has Slackware available on an
  429.   exported filesystem.)
  430.  
  431.   First we'll describe how to create the boot and root floppies, and
  432.   then we'll describe how to set things up for either a hard drive or
  433.   floppy installation.
  434.  
  435.   3.4.2.1.  Creating the boot and root floppies
  436.  
  437.   You must create floppies from the bootdisk and rootdisk images that
  438.   you downloaded, no matter what type of installation you will be doing.
  439.   This is where the MS-DOS programs GZIP.EXE and RAWRITE.EXE come into
  440.   play.
  441.  
  442.   First you must uncompress the bootdisk and rootdisk images using
  443.   GZIP.EXE (on an MS-DOS system, of course). For example, if you're
  444.   using the bare.gz bootdisk image, issue the MS-DOS command:
  445.  
  446.        C:> GZIP -D BARE.GZ
  447.  
  448.   which will uncompress bare.gz and leave you with the file bare. You
  449.   must similarly uncompress the rootdisk image. For example, if you are
  450.   using the rootdisk color144.gz, issue the command:
  451.  
  452.        C:> GZIP -D COLOR144.GZ
  453.  
  454.   which will uncompress the file and leave you with color144.
  455.  
  456.   Next, you must have two high-density MS-DOS formatted floppies.  (They
  457.   must be of the same type; that is, if your boot floppy drive is a 3.5"
  458.   drive, both floppies must be high-density 3.5" disks.) You will use
  459.   RAWRITE.EXE to write the boot and rootdisk images to the floppies.
  460.  
  461.   For example, if you're using the bare.gz bootdisk, use the command:
  462.  
  463.        C:> RAWRITE
  464.  
  465.   Answer the prompts for the name of the file to write (such as BARE¡
  466.   BOOT) and the floppy to write it to (such as A:). RAWRITE will copy
  467.   the file, block-by-block, directly to the floppy. Also use RAWRITE for
  468.   the root disk image (such as COLOR144). When you're done, you'll have
  469.   two floppies: one containing the boot disk, the other containing the
  470.   root disk. Note that these two floppies will no longer be readable by
  471.   MS-DOS (they are ``Linux format'' floppies, in some sense).
  472.  
  473.   Be sure that you're using brand-new, error-free floppies. The floppies
  474.   must have no bad blocks on them.
  475.  
  476.   Note that you do not need to be running MS-DOS in order to install
  477.   Slackware. However, running MS-DOS makes it easier to create the boot
  478.   and root floppies, and it makes it easier to install the software (as
  479.   you can install directly from an MS-DOS partition on your system). If
  480.   you are not running MS-DOS on your system, you can use someone else's
  481.   MS-DOS system just to create the floppies, and install from there.
  482.  
  483.   It is not necessary to use GZIP.EXE and RAWRITE.EXE under MS-DOS to
  484.   create the boot and root floppies, either. You can use the gzip and dd
  485.   commands on a UNIX system to do the same job.  (For this, you will
  486.   need a UNIX workstation with a floppy drive, of course.) For example,
  487.   on a Sun workstation with the floppy drive on device /dev/rfd0, you
  488.   can use the commands:
  489.  
  490.        $ gunzip bare.gz
  491.        $ dd if=bare of=/dev/rfd0 obs=18k
  492.  
  493.   You must provide the appropriate block size argument (the obs argu¡
  494.   ment) on some workstations (e.g., Suns) or this will fail. If you have
  495.   problems the man page for dd will be instructive.
  496.  
  497.   3.4.2.2.  Preparing for installation from hard drive
  498.  
  499.   If you're planning on installing the Slackware software directly from
  500.   the hard drive (which is much faster and more reliable than a floppy
  501.   installation), you will need an MS-DOS partition on the system that
  502.   you're installing Slackware to. (That is, you must already be running
  503.   MS-DOS on the system.)
  504.  
  505.   Note: If you plan to install Slackware from an MS-DOS partition, that
  506.   partition must NOT be compressed with DoubleSpace, Stacker, or any
  507.   other MS-DOS drive compression utility. Linux cannot currently read
  508.   DoubleSpace/Stacker MS-DOS partitions directly. (You can access them
  509.   via the MS-DOS Emulator, but that is not an option when installing the
  510.   Linux software.)
  511.  
  512.   To prepare for hard drive installation, simply create a directory on
  513.   the hard drive to store the Slackware files. For example,
  514.  
  515.        C:> MKDIR SLACKWAR
  516.  
  517.   will create the directory C:CKWAR to hold the Slackware files.  Under
  518.   this directory, you should create the subdirectories A1, A2, and so
  519.   on, for each disk set that you downloaded. All of the files from the
  520.   A1 disk should go into the directory SLACKWAR1and so forth.
  521.  
  522.   Now you're ready to go on and install the software; skip to the
  523.   section ``Installing the Software''.
  524.  
  525.   3.4.2.3.  Preparing for floppy installation
  526.  
  527.   If you wish to install Slackware from floppies instead of the hard
  528.   drive, you'll need to have one blank, MS-DOS formatted floppy for each
  529.   Slackware disk that you downloaded. These disks must be high-density
  530.   format.
  531.  
  532.   The A disk set (disks A1 through A4) may be either 3.5" or 5.25"
  533.   floppies. However, the rest of the disk sets must be 3.5" disks.
  534.   Therefore, if you only have a 5.25" floppy drive, you'll need to
  535.   borrow a 3.5" drive from someone in order to install disk sets other
  536.   than A. (Or, you can install from the hard drive, as explained in the
  537.   previous section.)
  538.  
  539.   To make the disks, simply copy the files from each Slackware directory
  540.   onto an MS-DOS formatted floppy, using the MS-DOS COPY command. As so:
  541.  
  542.        C:> COPY A1* A:
  543.  
  544.   will copy the contents of the A1 disk to the floppy in drive A:.  You
  545.   should repeat this for each disk that you downloaded.
  546.  
  547.   You do not need to modify or uncompress the files on the disks in any
  548.   way; you merely need to copy them to MS-DOS floppies. The Slackware
  549.   installation procedure takes care of uncompressing the files for you.
  550.  
  551.   4.  Installing the Software
  552.  
  553.   In this section we'll describe how to prepare your system for
  554.   installing Slackware, and finally how to go about installing it.
  555.  
  556.   4.1.  Repartitioning
  557.  
  558.   On most systems, the hard drive is already dedicated to partitions for
  559.   MS-DOS, OS/2, and so on.  You need to resize these partitions in order
  560.   to make space for Linux.
  561.  
  562.   NOTE: If you use one of the umsds root diskettes, you can install
  563.   Slackware TO a directory on your MS-DOS partition. (This is different
  564.   than installing FROM an MS-DOS partition.) Instead, you use the
  565.   ``UMSDOS filesystem'', which allows you to treat a directory of your
  566.   MS-DOS partition as a Linux filesystem. In this way, you don't have to
  567.   repartition your drive.
  568.  
  569.   I only suggest using this method if your drive has four partitions and
  570.   repartitioning would be more trouble than it's worth. Or, if you want
  571.   to try Slackware out before repartitioning, this is a good way to do
  572.   so. But in most cases you should repartition, as described here. If
  573.   you do plan to use UMSDOS, you are on your own---it is not documented
  574.   in detail here. From now on, we assume that you are NOT using UMSDOS,
  575.   and that you will be repartitioning.
  576.  
  577.   A partition is just a section of the hard drive set aside for a
  578.   particular operating system to use. If you only have MS-DOS installed,
  579.   your hard drive probably has just one partition, entirely for MS-DOS.
  580.   To use Linux, however, you'll need to repartition the drive, so that
  581.   you have one partition for MS-DOS, and one (or more) for Linux.
  582.  
  583.   Partitions come in three flavors: primary, extended, and logical.
  584.   Briefly, primary partitions are one of the four main partitions on
  585.   your drive. However, if you wish to have more than four partitions per
  586.   drive, you need to create an extended partition, which can contain
  587.   many logical partitions.  You don't store data directly on an extended
  588.   partition---it is used only as a container for logical partitions.
  589.   Data is stored only on either primary or logical partitions.
  590.  
  591.   To put this another way, most people use only primary partitions.
  592.   However, if you need more than four partitions on a drive, you create
  593.   an extended partition. Logical partitions are then created on top of
  594.   the extended partition, and there you have it---more than four
  595.   partitions per drive.
  596.  
  597.   Note that you can easily install Linux on the second drive on your
  598.   system (known as D: to MS-DOS). You simply specify the appropriate
  599.   device name when creating Linux partitions. This is described in
  600.   detail below.
  601.  
  602.   Back to repartitioning your drive: The problem with resizing
  603.   partitions is that there is no way to do it (easily) without deleting
  604.   the data on those partitions.  Therefore, you will need to make a full
  605.   backup of your system before repartitioning. In order to resize a
  606.   partition, we simply delete the partition(s), and re-create them with
  607.   smaller sizes.
  608.   NOTE: There is a non-destructive disk repartitioner available for MS-
  609.   DOS, called FIPS. Look on sunsite.unc.edu in the directory
  610.   /pub/Linux/system/Install. With FIPS, a disk optimizer (such as Norton
  611.   Speed Disk), and a little bit of luck, you should be able to resize
  612.   MS-DOS partitions without destroying the data on them.  It's still
  613.   suggested that you make a full backup before attempting this.
  614.  
  615.   If you're not using FIPS, however, the classic way to modify
  616.   partitions is with the program FDISK. For example, let's say that you
  617.   have an 80 meg hard drive, dedicated to MS-DOS. You'd like to split it
  618.   in half---40 megs for MS-DOS and 40 megs for Linux. In order to do
  619.   this, you run FDISK under MS-DOS, delete the 80 meg MS-DOS partition,
  620.   and re-create a 40 meg MS-DOS partition in its place. You can then
  621.   format the new partition and reinstall your MS-DOS software from
  622.   backups. 40 megabytes of the drive is left empty. Later, you create
  623.   Linux partitions on the unused portion of the drive.
  624.  
  625.   In short, you should do the following to resize MS-DOS partitions with
  626.   FDISK:
  627.  
  628.   1. Make a full backup of your system.
  629.  
  630.   2. Create an MS-DOS bootable floppy, using a command such as
  631.  
  632.        FORMAT /S A:
  633.  
  634.   3. Copy the files FDISK.EXE and FORMAT.COM to this floppy, as well as
  635.      any other utilities that you need. (For example, utilities to
  636.      recover your system from backup.)
  637.  
  638.   4. Boot the MS-DOS system floppy.
  639.  
  640.   5. Run FDISK, possibly specifying the drive to modify (such as C: or
  641.      D:).
  642.  
  643.   6. Use the FDISK menu options to delete the partitions which you wish
  644.      to resize. This will destroy all data on the affected partitions.
  645.  
  646.   7. Use the FDISK menu options to re-create those partitions, with
  647.      smaller sizes.
  648.  
  649.   8. Exit FDISK and re-format the new partitions with the FORMAT
  650.      command.
  651.  
  652.   9. Restore the original files from backup.
  653.  
  654.   Note that MS-DOS FDISK will give you an option to create a ``logical
  655.   DOS drive''. A logical DOS drive is just a logical partition on your
  656.   hard drive. You can install Linux on a logical partition, but you
  657.   don't want to create that logical partition with MS-DOS fdisk. So, if
  658.   you're currently using a logical DOS drive, and want to install Linux
  659.   in its place, you should delete the logical drive with MS-DOS FDISK,
  660.   and (later) create a logical partition for Linux in its place.
  661.  
  662.   The mechanism used to repartition for OS/2 and other operating systems
  663.   is similar. See the documentation for those operating systems for
  664.   details.
  665.  
  666.   4.2.  Creating partitions for Linux
  667.  
  668.   After repartitioning your drive, you need to create partitions for
  669.   Linux. Before describing how to do that, we'll talk about partitions
  670.   and filesystems under Linux.
  671.   4.2.1.  Filesystems and swap space
  672.  
  673.   Linux requires at least one partition, for the root filesystem, which
  674.   will hold the Linux software itself.
  675.  
  676.   You can think of a filesystem as a partition formatted for Linux.
  677.   Filesystems are used to hold files. Every system must have a root
  678.   filesystem, at least. However, many users prefer to use multiple
  679.   filesystems---one for each major part of the directory tree. For
  680.   example, you may wish to create a separate filesystem to hold all
  681.   files under the /usr directory.  (Note that on UNIX systems, forward
  682.   slashes are used to delimit directories, not backslashes as with MS-
  683.   DOS.) In this case you have both a root filesystem, and a /usr
  684.   filesystem.
  685.  
  686.   Each filesystem requires its own partition. Therefore, if you're using
  687.   both root and /usr filesystems, you'll need to create two Linux
  688.   partitions.
  689.  
  690.   In addition, most users create a swap partition, which is used for
  691.   virtual RAM. If you have, say, 4 megabytes of memory on your machine,
  692.   and a 10-megabyte swap partition, as far as Linux is concerned you
  693.   have 14 megabytes of virtual memory.
  694.  
  695.   When using swap space, Linux moves unused pages of memory out to disk,
  696.   allowing you to run more applications at once on your system.
  697.   However, because swapping is often slow, it's no replacement for real
  698.   physical RAM. But applications that require a great deal of memory
  699.   (such as the X Window System) often rely on swap space if you don't
  700.   have enough physical RAM.
  701.  
  702.   Nearly all Linux users employ a swap partition.  If you have 4
  703.   megabytes of RAM or less, a swap partition is required to install the
  704.   software. It is strongly recommended that you have a swap partition
  705.   anyway, unless you have a great amount of physical RAM.
  706.  
  707.   The size of your swap partition depends on how much virtual memory you
  708.   need. It's often suggested that you have at least 16 megabytes of
  709.   virtual memory total. Therefore, if you have 8 megs of physical RAM,
  710.   you might want to create an 8-megabyte swap partition.  Note that swap
  711.   partitions can be no larger than 128 megabytes in size. Therefore, if
  712.   you need more than 128 megs of swap, you must create multiple swap
  713.   partitions. You may have up to 16 swap partitions in all.
  714.  
  715.   4.2.2.  Booting the installation disk
  716.  
  717.   4.2.2.1.  Specifying hardware parameters
  718.  
  719.   The first step is to boot the Slackware bootdisk. After the system
  720.   boots, you will see the message:
  721.  
  722.        Welcome to the Slackware Linux 2.0.0 Bootkernel disk!
  723.  
  724.   Here, you are given the opportunity to specify various hardware param¡
  725.   eters, such as your SCSI controller IRQ and address, or drive geome¡
  726.   try, before booting the Linux kernel.  This is necessary in case Linux
  727.   does not detect your SCSI controller or hard drive geometry, for exam¡
  728.   ple.
  729.  
  730.   In particular, many BIOS-less SCSI controllers require you to specify
  731.   the port address and IRQ at boot time. Likewise, IBM PS/1, ThinkPad,
  732.   and ValuePoint machines do not store drive geometry in the CMOS, and
  733.   you must specify it at boot time.
  734.  
  735.   To try booting the kernel without any special parameters, just press
  736.   enter at the boot prompt.
  737.  
  738.   Watch the messages as the system boots. If you have a SCSI controller,
  739.   you should see a listing of the SCSI hosts detected.  If you see the
  740.   message
  741.  
  742.        SCSI: 0 hosts
  743.  
  744.   Then your SCSI controller was not detected, and you will have to use
  745.   the following procedure.
  746.  
  747.   Also, the system will display information on the drive partitions and
  748.   devices detected. If any of this information is incorrect or missing,
  749.   you will have to force hardware detection.
  750.  
  751.   On the other hand, if all goes well and you hardware seems to be
  752.   detected, you can skip to the following section, ``Loading the root
  753.   disk.''
  754.  
  755.   To force hardware detection, you must enter the appropriate parameters
  756.   at the boot prompt, using the following syntax:
  757.  
  758.        ramdisk <parameters...>
  759.  
  760.   There are a number of such parameters available; here are some of the
  761.   most common.
  762.  
  763.   ╖  hd=cylinders,heads,sectors Specify the drive geometry.  Required
  764.      for systems such as the IBM PS/1, ValuePoint, and ThinkPad.  For
  765.      example, if your drive has 683 cylinders, 16 heads, and 32 sectors
  766.      per track, enter
  767.  
  768.        ramdisk hd=683,16,32
  769.  
  770.   ╖  tmc8xx=memaddr,irq Specify address and IRQ for BIOS-less Future
  771.      Domain TMC-8xx SCSI controller. For example,
  772.  
  773.        ramdisk tmc8xx=0xca000,5
  774.  
  775.   Note that the 0x prefix must be used for all values given in hex. This
  776.   is true for all of the following options.
  777.  
  778.   ╖  st0x=memaddr,irq Specify address and IRQ for BIOS-less Seagate ST02
  779.      controller.
  780.   ╖  t128=memaddr,irq Specify address and IRQ for BIOS-less Trantor
  781.      T128B controller.
  782.  
  783.   ╖  ncr5380=port,irq,dma Specify port, IRQ, and DMA channel for generic
  784.      NCR5380 controller.
  785.  
  786.   ╖  aha152x=port,irq,scsi_id,1 Specify port, IRQ, and SCSI ID for BIOS-
  787.      less AIC-6260 controllers. This includes Adaptec 1510, 152x, and
  788.      Soundblaster-SCSI controllers.
  789.  
  790.      For each of these, you must enter `ramdisk' followed by the
  791.      parameter that you wish to use.
  792.  
  793.   If you have questions about these boot-time options, please read the
  794.   Linux SCSI HOWTO, which should be available on any Linux FTP archive
  795.   site (or from wherever you obtained this document).  The SCSI HOWTO
  796.   explains Linux SCSI compatibility in much more detail.
  797.  
  798.   4.2.2.2.  Loading the rootdisk
  799.  
  800.   After booting the kernel, you will be prompted to enter the Slackware
  801.   root disk:
  802.  
  803.        Please remove the boot kernel disk from your floppy drive,
  804.        insert a disk to be loaded into the ramdisk, and press
  805.        [enter] to continue.
  806.  
  807.   At this point you should remove the bootdisk from the drive and insert
  808.   the rootdisk. Then press enter to go on.
  809.  
  810.   The rootdisk will be loaded into memory, and you should be presented
  811.   with a login prompt. Login as ``root''.
  812.  
  813.        slackware login: root
  814.        #
  815.  
  816.   4.2.3.  Using fdisk
  817.  
  818.   To create Linux partitions, we'll use the Linux version of the fdisk
  819.   program. After logging in as root, run the command
  820.  
  821.        fdisk <drive>
  822.  
  823.   where <drive> is the name of the drive that you wish to create Linux
  824.   partitions on. Hard drive device names are:
  825.  
  826.   ╖  /dev/hda First IDE drive
  827.  
  828.   ╖  /dev/hdb Second IDE drive
  829.  
  830.   ╖  /dev/sda First SCSI drive
  831.  
  832.   ╖  /dev/sdb Second SCSI drive
  833.  
  834.      For example, to create Linux partitions on the first SCSI drive in
  835.      your system, use the command
  836.  
  837.        fdisk /dev/sda
  838.  
  839.   If you use fdisk without an argument, it will assume /dev/hda.
  840.  
  841.   To create Linux partitions on the second drive on your system, simply
  842.   specify either /dev/hdb (for IDE drives) or /dev/sdb (for SCSI drives)
  843.   when running fdisk.
  844.  
  845.   Your Linux partitions don't all have to be on the same drive.  You
  846.   might want to create your root filesystem partition on /dev/hda and
  847.   your swap partition on /dev/hdb, for example. In order to do so just
  848.   run fdisk once for each drive.
  849.  
  850.   Use of fdisk is simple. The command ``p'' displays your current
  851.   partition table. ``n'' creates a new partition, and ``d'' deletes a
  852.   partition.
  853.  
  854.   To Linux, partitions are given a name based on the drive which they
  855.   belong to. For example, the first partition on the drive /dev/hda is
  856.   /dev/hda1, the second is /dev/hda2, and so on. If you have any logical
  857.   partitions, they are numbered starting with /dev/hda5, /dev/hda6 and
  858.   so on up.
  859.  
  860.   NOTE: You should not create or delete partitions for operating systems
  861.   other than Linux with Linux fdisk. That is, don't create or delete MS-
  862.   DOS partitions with this version of fdisk; use MS-DOS's version of
  863.   FDISK instead. If you try to create MS-DOS partitions with Linux
  864.   fdisk, chances are MS-DOS will not recognize the partition and not
  865.   boot correctly.
  866.  
  867.   Here's an example of using fdisk. Here, we have a single MS-DOS
  868.   partition using 61693 blocks on the drive, and the rest of the drive
  869.   is free for Linux. (Under Linux, one block is 1024 bytes. Therefore,
  870.   61693 blocks is about 61 megabytes.)  We will create two Linux
  871.   partitions: one for swap, and one for the root filesystem.
  872.  
  873.   First, we use the ``p'' command to display the current partition
  874.   table.  As you can see, /dev/hda1 (the first partition on /dev/hda) is
  875.   a DOS partition of 61693 blocks.
  876.  
  877.   ______________________________________________________________________
  878.   Command (m for help):   p
  879.   Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders
  880.   Units = cylinders of 608 * 512 bytes
  881.  
  882.        Device Boot  Begin   Start     End  Blocks   Id  System
  883.     /dev/hda1   *       1       1     203   61693    6  DOS 16-bit >=32M
  884.  
  885.   Command (m for help):
  886.   ______________________________________________________________________
  887.  
  888.   Next, we use the ``n'' command to create a new partition. The Linux
  889.   root partition will be 80 megs in size.
  890.  
  891.   ______________________________________________________________________
  892.   Command (m for help):  n
  893.   Command action
  894.       e   extended
  895.       p   primary partition (1-4)
  896.   p
  897.   ______________________________________________________________________
  898.  
  899.   Here we're being asked if we want to create an extended or primary
  900.   partition. In most cases you want to use primary partitions, unless
  901.   you need more than four partitions on a drive. See the section
  902.   ``Repartitioning'', above, for more information.
  903.  
  904.   ______________________________________________________________________
  905.   Partition number (1-4): 2
  906.   First cylinder (204-683):  204
  907.   Last cylinder or +size or +sizeM or +sizeK (204-683): +80M
  908.   ______________________________________________________________________
  909.  
  910.   The first cylinder should be the cylinder AFTER where the last
  911.   partition left off. In this case, /dev/hda1 ended on cylinder 203, so
  912.   we start the new partition at cylinder 204.
  913.  
  914.   As you can see, if we use the notation ``+80M'', it specifies a
  915.   partition of 80 megs in size. Likewise, the notation ``+80K'' would
  916.   specify an 80 kilobyte partition, and ``+80'' would specify just an 80
  917.   byte partition.
  918.  
  919.   ______________________________________________________________________
  920.   Warning: Linux cannot currently use 33090 sectors of this partition
  921.   ______________________________________________________________________
  922.  
  923.   If you see this warning, you can ignore it. It is left over from an
  924.   old restriction that Linux filesystems could only be 64 megs in size.
  925.   However, with newer filesystem types, that is no longer the case...
  926.   partitions can now be up to 4 terabytes in size.
  927.  
  928.   Next, we create our 10 megabyte swap partition, /dev/hda3.
  929.  
  930.   ______________________________________________________________________
  931.   Command (m for help): n
  932.   Command action
  933.       e   extended
  934.       p   primary partition (1-4)
  935.   p
  936.  
  937.   Partition number (1-4): 3
  938.   First cylinder (474-683):  474
  939.   Last cylinder or +size or +sizeM or +sizeK (474-683):  +10M
  940.   ______________________________________________________________________
  941.  
  942.   Again, we display the contents of the partition table. Be sure to
  943.   write down the information here, especially the size of each partition
  944.   in blocks. You need this information later.
  945.  
  946.   ______________________________________________________________________
  947.   Command (m for help): p
  948.   Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders
  949.   Units = cylinders of 608 * 512 bytes
  950.  
  951.        Device Boot  Begin   Start     End  Blocks   Id  System
  952.     /dev/hda1   *       1       1     203   61693    6  DOS 16-bit >=32M
  953.     /dev/hda2         204     204     473   82080   83  Linux native
  954.     /dev/hda3         474     474     507   10336   83  Linux native
  955.   ______________________________________________________________________
  956.  
  957.   Note that the Linux swap partition (here, /dev/hda3) has type ``Linux
  958.   native''. We need to change the type of the swap partition to ``Linux
  959.   swap'' so that the installation program will recognize it as such. In
  960.   order to do this, use the fdisk ``t'' command:
  961.  
  962.   ______________________________________________________________________
  963.   Command (m for help): t
  964.   Partition number (1-4): 3
  965.   Hex code (type L to list codes): 82
  966.   ______________________________________________________________________
  967.  
  968.   If you use ``L'' to list the type codes, you'll find that 82 is the
  969.   type corresponding to Linux swap.
  970.  
  971.   To quit fdisk and save the changes to the partition table, use the
  972.   ``w'' command. To quit fdisk WITHOUT saving changes, use the ``q''
  973.   command.
  974.  
  975.   After quitting fdisk, the system may tell you to reboot to make sure
  976.   that the changes took effect. In general there is no reason to reboot
  977.   after using fdisk---the version of fdisk on the Slackware distribution
  978.   is smart enough to update the partitions without rebooting.
  979.  
  980.   4.3.  Preparing the swap space
  981.  
  982.   If you have 4 megabytes of RAM (or less) in your machine, you need to
  983.   create a swap partition (using fdisk) and enable it for use before
  984.   installing the software. Here, we describe how to format and enable
  985.   your swap partition(s).
  986.  
  987.   If you have more than 4 megs of RAM, you need only create your
  988.   partition(s)---it's not necessary to format and enable them before
  989.   installing the software.  In this case you can skip down to the
  990.   section ``Installing the Software''.
  991.  
  992.   If you get any ``out of memory'' errors during the installation
  993.   procedure you should create a swap partition and enable it as
  994.   described here.
  995.  
  996.   To prepare the swap space for use, we use the mkswap command.  It
  997.   takes the form:
  998.  
  999.        mkswap -c <partition> <size>
  1000.  
  1001.   where <partition> is the partition name, such as /dev/hda3, and <size>
  1002.   is the size of the partition in blocks.
  1003.  
  1004.   For example, if you created the swap partition /dev/hda3 of size 10336
  1005.   blocks, use the command
  1006.  
  1007.   mkswap -c /dev/hda3 10336
  1008.  
  1009.   The -c option tells mkswap to check for bad blocks on the partition
  1010.   when preparing the swap space. If you see any ``read_intr'' error mes¡
  1011.   sages during the mkswap operation, this means that bad blocks were
  1012.   found (and flagged). So you can ignore these errors.
  1013.  
  1014.   To enable swapping on the new device, use the command
  1015.  
  1016.        swapon <partition>
  1017.  
  1018.   For example, for our swap space on /dev/hda3, we use
  1019.  
  1020.        swapon /dev/hda3
  1021.  
  1022.   We're now swapping with about 10 megabytes more virtual memory.
  1023.  
  1024.   You should execute mkswap and swapon for each swap partition that you
  1025.   created.
  1026.  
  1027.   4.4.  Installing the software
  1028.  
  1029.   Installing the Slackware release is very simple; it's almost
  1030.   automatic. You use the setup command, which guides you through a
  1031.   series of menus which allow you to specify the means of installation,
  1032.   the partitions to use, and so forth.  Almost everything is automatic.
  1033.  
  1034.   Here, we're not going to document many of the specifics of using
  1035.   setup, because it changes from time to time. setup is very self-
  1036.   explanatory; it contains its own documentation. Just to give you an
  1037.   idea of what it's like, however, we'll describe what most
  1038.   installations are like using setup.
  1039.  
  1040.   Before you begin, be sure that you have a high-density MS-DOS
  1041.   formatted floppy on hand. You will use this floppy to create a Linux
  1042.   boot diskette.
  1043.  
  1044.   After running fdisk (and, perhaps, mkswap and swapon as described
  1045.   above), issue the command
  1046.  
  1047.        # setup
  1048.  
  1049.   This will present you with a colourful menu with various options such
  1050.   as ``Addswap'' (to set up your swap space), ``Source'' (to specify the
  1051.   source of the software to install, such as floppy or hard drive),
  1052.   ``Target'' (to specify where to install the software), and so on.
  1053.  
  1054.   In general, you should go through the menu commands in the following
  1055.   order:
  1056.  
  1057.   1. Addswap. If you created a swap partition (using fdisk), use the
  1058.      addswap menu option to tell the system about it.  This option will
  1059.      present you with a list of possible swap partitions; just type in
  1060.      the name of the swap partition(s) that you wish to use (such as
  1061.      /dev/hda3). The system will then ask you if you want to format the
  1062.      swap partition, which you should do unless you already ran mkswap
  1063.      and swapon on it.  That is, you should format the swap partition
  1064.      unless you already formatted and enabled it by hand as described in
  1065.      the previous section.
  1066.  
  1067.   2. Source. This menu option lets you specify the source for the
  1068.      software to install. You can select several means of installation,
  1069.      such as from floppy or from hard drive. If you are installing from
  1070.      floppies, the system will ask you which floppy drive to use. If you
  1071.      are installing from hard drive, the system will ask you what
  1072.      partition the files are stored on, and what directory they are in.
  1073.  
  1074.      For example, if you are installing from an MS-DOS partition on your
  1075.      hard drive, and the Slackware files are under the directory
  1076.      C:CKWAR, you should enter the name of the MS-DOS partition (such as
  1077.      /dev/hda1) and the name of the directory (such as /slackwar). Note
  1078.      that you should use forward slashes (/), not backslashes (\fR), in
  1079.      the directory name.
  1080.  
  1081.      There are other means of installation, such as CD-ROM. These should
  1082.      be self-explanatory as well.
  1083.  
  1084.   3. Target. This menu item lets you specify what partition(s) to
  1085.      install the software on. The system will display a list of possible
  1086.      partitions. First you will be asked to enter the name of the root
  1087.      partition, such as /dev/hda2. You will be asked if you want to
  1088.      format the partition; unless you are installing on a partition
  1089.      previously formatted for Linux you should do so. You should use the
  1090.      Second Extended Filesystem (ext2fs) type for the partition.
  1091.  
  1092.      You will also be given a chance to use additional partitions for
  1093.      different parts of the directory tree. For example, if you created
  1094.      a separate partition for the /usr filesystem, you should enter the
  1095.      name of that partition and the directory that it corresponds to
  1096.      (/usr) when asked.
  1097.  
  1098.   4. Disksets. This option allows you to specify the disksets you wish
  1099.      to install. Use the arrow keys to scroll through the list; pressing
  1100.      the spacebar selects or deselects a set. Press return when you're
  1101.      done selecting disk sets.
  1102.  
  1103.      You may wish to only install a minimal system at this time. That's
  1104.      fine. Only the A diskset is required. After you have installed the
  1105.      software you may run setup to install other disksets.
  1106.  
  1107.   5. Install. After setting up all of the parameters above, you're ready
  1108.      to install the software. First the system will ask you what type of
  1109.      prompting to use; you should use the ``normal'' prompting method
  1110.      (unless you're an expert and have modified the installation
  1111.      tagfiles in some way).
  1112.  
  1113.      The system will simply go through each disk set and install the
  1114.      software. For each software package, a dialog box will be displayed
  1115.      describing the software. Software packages that are required will
  1116.      be installed automatically. For optional software packages you will
  1117.      be given the option of either installing or not installing the
  1118.      package. (If you don't wish to install a certain package now, you
  1119.      can always use setup on your system to install it later).
  1120.  
  1121.      While the software is installing, watch out for error messages that
  1122.      may be displayed. The most common error that you're likely to run
  1123.      into is ``device full'', which means that you have run out of space
  1124.      on your Linux partitions. Unfortunately, the Slackware installation
  1125.      procedure is not quite smart enough to detect this, and will
  1126.      attempt to continue installing the software regardless. If you get
  1127.      any kind of error messages during the installation procedure, you
  1128.      may wish to break out of the installation program (using Ctrl-C) to
  1129.      record them. The only solution for the ``device full'' problem is
  1130.      to re-create your Linux partitions with different sizes, or attempt
  1131.      to reinstall the software without several of the optional software
  1132.      packages.
  1133.   4.5.  After installation
  1134.  
  1135.   After installation is complete, and if all goes well, you will be
  1136.   given the option of creating a ``standard boot disk'', which you can
  1137.   use to boot your newly-installed Linux system. For this you will need
  1138.   a blank, high-density MS-DOS formatted diskette of the type that you
  1139.   boot with on your system. Simply insert the disk when prompted and a
  1140.   boot diskette will be created.
  1141.  
  1142.   You will also be given the chance to install LILO on your hard drive.
  1143.   LILO (which stands for LInux LOader) is a program that will allow you
  1144.   to boot Linux (as well as other operating systems, such as MS-DOS)
  1145.   from your hard drive. If you wish to do this, just select the
  1146.   appropriate menu option and follow the prompts.
  1147.  
  1148.   If you are using OS/2's Boot Manager, the menu will include an option
  1149.   for configuring LILO for use with the Boot Manager, so that you can
  1150.   boot Linux from it.
  1151.  
  1152.   Note that this automated LILO installation procedure is not foolproof;
  1153.   there are situations in which this can fail. Be sure that you have a
  1154.   way to boot MS-DOS, Linux, and other operating systems from floppy
  1155.   before you attempt to install LILO. If the LILO installation fails you
  1156.   will be able to boot your system from floppy and correct the problem.
  1157.  
  1158.   More information on configuring LILO is given below.
  1159.  
  1160.   The postinstallation procedure will also take you through several menu
  1161.   items allowing you to configure your system. This includes specifying
  1162.   your modem and mouse device, as well as your time zone. Just follow
  1163.   the menu options.
  1164.  
  1165.   4.6.  Booting your new system
  1166.  
  1167.   If everything went as planned, you should be able to boot your Linux
  1168.   boot floppy (not the Slackware installation floppy, but the floppy
  1169.   created after installing the software). Or, if you installed LILO, you
  1170.   should be able to boot from the hard drive.  After booting, login as
  1171.   root. Congratulations! You have your very own Linux system.
  1172.  
  1173.   If you are booting using LILO, try holding down shift or control
  1174.   during boot. This will present you with a boot prompt; press tab to
  1175.   see a list of options. In this way you can boot Linux, MS-DOS, or
  1176.   whatever directly from LILO.
  1177.  
  1178.   After booting your system and logging in as root, one of the first
  1179.   things you should do is create an account for yourself.  The adduser
  1180.   command may be used for this purpose. For example,
  1181.  
  1182.        # adduser
  1183.        Login to add (^C to quit): ebersol
  1184.        Full Name: Norbert Ebersol
  1185.        GID [100]: 100
  1186.        UID [501]: 501
  1187.        Home Directory [/home/ebersol]: /home/ebersol
  1188.        Shell [/bin/bash]: /bin/bash
  1189.        Password [ebersol]: new.password
  1190.  
  1191.        Information for new user [ebersol]:
  1192.        Home directory: [/home/ebersol]  Shell: [/bin/bash]
  1193.        Password: [new.password]  UID: [502] GID:[100]
  1194.        Is this correct? [y/n]: y
  1195.  
  1196.   adduser will prompt you for various parameters, such as the username,
  1197.   full name, GID (group ID), UID (user ID), and so on. For the most part
  1198.   you can use the defaults. If you're unfamiliar with creating users on
  1199.   a UNIX system, I strongly suggest getting a book on UNIX systems
  1200.   administration. It will help you greatly in setting up and using your
  1201.   new system.
  1202.  
  1203.   You can now login as the new user. You can use the keys Alt-F1 through
  1204.   Alt-F8 to switch between virtual consoles, which will allow you to
  1205.   login multiple times from the console. The passwd command can be used
  1206.   to set the passwords on your new accounts; you should set a password
  1207.   for root and any new users that you create.
  1208.  
  1209.   Also, the hostname of your machine is set at boot time in the file
  1210.   /etc/rc.d/rc.M. You should edit this file (as root) to change the
  1211.   hostname of the machine.  You should edit the lines in this file which
  1212.   run the commands hostname or hostname_notcp. (The default hostname is
  1213.   darkstar.) You may also wish to edit the domainname commands in this
  1214.   file, if you are on a TCP/IP network.  (On most Slackware systems the
  1215.   hostname and domain name are set in the file /etc/HOSTNAME, so editing
  1216.   this file will probably suffice.)
  1217.  
  1218.   Obviously, there are many more things to setup and configure. A good
  1219.   book on UNIX systems administration should help. (I suggest Essential
  1220.   Systems Administration from O'Reilly and Associates.)  You will pick
  1221.   these things up as time goes by. You should read various other Linux
  1222.   HOWTOs, such as the NET-2-HOWTO and Printing-HOWTO, for information on
  1223.   other configuration tasks.
  1224.  
  1225.   After that, the system is all yours... have fun!
  1226.  
  1227.   5.  Configuring LILO
  1228.  
  1229.   LILO is a boot loader, which can be used to select either Linux, MS-
  1230.   DOS, or some other operating system at boot time. If you install LILO
  1231.   as the primary boot loader, it will handle the first-stage booting
  1232.   process for all operating systems on your drive. This works well if
  1233.   MS-DOS is the only other operating system that you have installed.
  1234.   However, you might be running OS/2, which has it's own Boot Manager.
  1235.   In this case, you want OS/2's Boot Manager to be the primary boot
  1236.   loader, and use LILO just to boot Linux (as the secondary boot
  1237.   loader).
  1238.  
  1239.   The Slackware installation procedure allows you to install and
  1240.   configure LILO. However, this method doesn't seem to be smart enough
  1241.   to handle several peculiar situations. It might be easier in some
  1242.   cases to configure LILO by hand.
  1243.  
  1244.   In order to set up LILO for your system, just edit the file
  1245.   /etc/lilo.conf. Below we present an example of a LILO configuration
  1246.   file, where the Linux root partition is on /dev/hda2, and MS-DOS is
  1247.   installed on /dev/hdb1 (on the second hard drive).
  1248.  
  1249.   # Tell LILO to install itself as the primary boot loader on /dev/hda.
  1250.   boot = /dev/hda
  1251.   # The boot image to install; you probably shouldn't change this
  1252.   install = /boot/boot.b
  1253.   # Do some optimization. Doesn't work on all systems.
  1254.   compact
  1255.  
  1256.   # The stanza for booting Linux.
  1257.   image = /vmlinuz       # The kernel is in /vmlinuz
  1258.     label = linux        # Give it the name "linux"
  1259.     root = /dev/hda2     # Use /dev/hda2 as the root filesystem
  1260.     vga = ask            # Prompt for VGA mode
  1261.     append = "aha152x=0x340,11,7,1"  # Add this to the boot options,
  1262.                                      # for detecting the SCSI controller
  1263.  
  1264.   # The stanza for booting MS-DOS
  1265.   other = /dev/hdb1      # This is the MS-DOS partition
  1266.     label = msdos        # Give it the name "msdos"
  1267.     table = /dev/hdb     # The partition table for the second drive
  1268.  
  1269.   Once you have edited the /etc/lilo.conf file, run /sbin/lilo as root.
  1270.   This will install LILO on your drive. Note that you must rerun
  1271.   /sbin/lilo anytime that you recompile your kernel (something that you
  1272.   don't need to worry about just now, but keep it in mind).
  1273.  
  1274.   Note how we use the append option in /etc/lilo.conf to specify boot
  1275.   parameters as we did when booting the Slackware bootdisk.
  1276.  
  1277.   You can now reboot your system from the hard drive. By default LILO
  1278.   will boot the operating system listed first in the configuration file,
  1279.   which in this case is Linux. In order to bring up a boot menu, in
  1280.   order to select another operating system, hold down shift or ctrl
  1281.   while the system boots; you should see a prompt such as
  1282.  
  1283.        Boot:
  1284.  
  1285.   Here, enter either the name of the operating system to boot (given by
  1286.   the label line in the configuration file; in this case, either linux
  1287.   or msdos), or press tab to get a list.
  1288.  
  1289.   Now let's say that you want to use LILO as the secondary boot loader;
  1290.   if you want to boot Linux from OS/2's Boot Manager, for example.  In
  1291.   order to boot a Linux partition from OS/2 Boot Manager, unfortunately,
  1292.   you must create the partition using OS/2's FDISK (not Linux's), and
  1293.   format the partition as FAT or HPFS, so that OS/2 knows about it.
  1294.   (That's IBM for you.)
  1295.  
  1296.   In order to have LILO boot Linux from OS/2 Boot Manager, you only want
  1297.   to install LILO on your Linux root filesystem (in the above example,
  1298.   /dev/hda2). In this case, your LILO config file should look something
  1299.   like:
  1300.  
  1301.        boot = /dev/hda2
  1302.        install = /boot/boot.b
  1303.        compact
  1304.  
  1305.        image = /vmlinuz
  1306.          label = linux
  1307.          root = /dev/hda2
  1308.          vga = ask
  1309.  
  1310.   Note the change in the boot line. After running /sbin/lilo you should
  1311.   be able to add the Linux partition to Boot Manager. This mechanism
  1312.   should work for boot loaders used by other operating systems as well.
  1313.  
  1314.   6.  Miscellaneous
  1315.  
  1316.   I don't like to be biased towards the Slackware release, however, in
  1317.   order to document multiple releases of Linux, this file would be much,
  1318.   much longer. It is simpler and more coherent to cover the specific
  1319.   instructions for a single release of Linux. The book Linux
  1320.   Installation and Getting Started currently includes general
  1321.   installation instructions which should be applicable to ``any''
  1322.   distribution of Linux. However, because the installation procedures
  1323.   are so varied, covering them all would be very confusing both to
  1324.   myself and to the reader.
  1325.  
  1326.   The basic concepts in this document still hold, no matter what release
  1327.   of Linux you choose. For example, all releases require you to run
  1328.   fdisk, and all of them (to my knowledge) include some kind of
  1329.   installation menu similar to the setup program.  If you choose to use
  1330.   a release of Linux other than Slackware, the READMEs and installation
  1331.   instructions that come with that release should be easy to understand
  1332.   in the context of the material presented here.
  1333.  
  1334.   If you would like a more complete discussion of Linux installation
  1335.   (instead of the "quick" examples given here), read the book Linux
  1336.   Installation and Getting Started, from sunsite.unc.edu in
  1337.   /pub/Linux/docs/LDP.  This book includes a complete discussion of how
  1338.   to obtain and install Linux, as well as a basic UNIX and systems
  1339.   administration tutorial for new users.
  1340.  
  1341.   Please mail me at mdw@sunsite.unc.edu if any part of this document is
  1342.   confusing or incorrect. I depend on feedback from readers in order to
  1343.   maintain this document! I also like to help answer questions about
  1344.   Linux installation, if you have any.
  1345.  
  1346.   I'd like to thank Patrick Volkerding for his work on the Slackware
  1347.   distribution and assistance in preparing this document.
  1348.  
  1349.   Best of luck with your new Linux system!
  1350.  
  1351.   Cheers, mdw
  1352.  
  1353.